Dynamic assignment of unlicensed bands for data flow transmission

ABSTRACT

A network device may determine a sequence. The sequence may identify an order in which particular unlicensed bands, of a plurality of unlicensed bands in an unlicensed spectrum, are to be assigned for the transmission of data flows. The network device may provide information identifying the sequence via a licensed band to a user device to cause the user device to transmit or receive the data flows via the particular unlicensed bands identified in the sequence in the order in which the particular unlicensed bands are to be assigned; and transmit or receive, to or from the user device, the data flows via the particular unlicensed and the licensed bands.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation of co-pending U.S. patent applicationSer. No. 14/206,979, titled “DYNAMIC ASSIGNMENT OF UNLICENSED BANDS FORDATA FLOW TRANSMISSION,” filed Mar. 12, 2014, the contents of which areincorporated herein by reference in their entirety.

BACKGROUND

User devices may connect to cellular networks to transmit and/or receivedata flows. Cellular networks assign the transmission of data flows toparticular bands (e.g., frequency ranges) in a spectrum. Cellularnetworks may operate on a licensed spectrum having a number of licensedbands. As network bandwidth demands increase, the amount of bandwidthprovided on the licensed spectrum may be insufficient to support thetransmission of data flows.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates an example overview of an implementation describedherein;

FIG. 2 illustrates an example environment in which systems and/ormethods, described herein, may be implemented;

FIG. 3 illustrates example components of a base station;

FIG. 4 illustrates a flowchart of an example process for assigning anunlicensed band for the transmission of data flows;

FIGS. 5A and 5B illustrate example implementations for transmitting andreceiving data flows via licensed and unlicensed bands;

FIG. 6 illustrates an example implementation for transmitting data flowsvia licensed and unlicensed bands;

FIG. 7A illustrates a graph of an example unlicensed spectrum dividedinto possible channels:

FIG. 7B illustrates a graph of example unlicensed band assignments overtime; and

FIG. 8 illustrates example components of a device.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

The following detailed description refers to the accompanying drawings.The same reference numbers in different drawings may identify the sameor similar elements.

Systems and/or methods, as described herein, may utilize unlicensedfrequencies in a spectrum to transmit data flows to and/or from a userdevice in order to increase data rates and/or otherwise increase theperformance of data transmissions.

FIG. 1 illustrates an example overview of an implementation describedherein. In FIG. 1, a user device may connect with a base station toaccess a network, such as a cellular network. When connected to the basestation, the user device may transmit and/or receive data flows via aprimary component carrier (PCC) associated with a licensed band. As usedherein, the term “licensed band” may refer to a predetermined frequencyrange that is reserved and/or owned by a service provider for data flowtransmission. Examples of licensed bands may include, for example,frequency bands commonly used pursuant to wireless networking usingcellular networks (e.g., long-term evolution (LTE) network, etc.). Asused herein, the term “unlicensed band” may refer to a frequency rangethat may be utilized for data flow transmission, but may not bepredetermined. Examples of unlicensed bands may include, for example,frequency bands commonly used pursuant to wireless networking usingInstitute of Electrical and Electronics Engineers (IEEE) 802.11-basednetworking (e.g., WiFi).

As shown in FIG. 1 the base station may provide an unlicensed bandassignment to the user device. For example, the base station may providethe unlicensed band assignment via the PCC that is implemented over thelicensed band. The unlicensed band assignment may include a sequence ofchannel identifiers. Each channel identifier may identify a particularunlicensed band via which the user device may transmit and/or receivedata flows over a secondary component carrier (SCC). Based on receivingthe unlicensed band assignment, the user device may transmit and/orreceive the data flows via both the licensed band and the unlicensedbands identified in the unlicensed band assignment. As a result,bandwidth, available to the user device via the PCC, may be supplementedby unlicensed bands associated with the SCC, thereby increasingbandwidth available to the user device and/or a transmission performance(e.g., as measured by data rates, latency, jitter, etc.).

In some implementations, unlicensed bands may be dynamically assigned ona per-packet basis based on the sequence of channel identifiers includedin the unlicensed band assignment. That is, packets in a data flow maybe transmitted and/or received via different unlicensed bands. In someimplementations, the base station may continuously provide updatedunlicensed band assignments to dynamically assign unlicensed bands on aper-packet basis.

FIG. 2 is a diagram of an example environment 200 in which systemsand/or methods described herein may be implemented. As shown in FIG. 2,environment 200 may include user devices 210-1 through 210-M (where M isgreater than or equal to 1), a base station 220, a serving gateway 230(referred to as “SGW 230”), a mobility management entity device 240(referred to as “MME 240”), a packet data network (PDN) gateway (PGW)250 (referred to as “PGW 250”), a home subscriber server(HSS)/authentication, authorization, accounting (AAA) server 260(referred to as an “HSS/AAA server 260”), a call service controlfunction (CSCF) server 270 (referred to as “CSCF server 270”), and anetwork 280.

Environment 200 may include an evolved packet system (EPS) that includesa long term evolution (LTE) network, an evolved packet core (EPC),and/or an Internet protocol (IP) multimedia subsystem (IMS) core thatoperate based on a third generation partnership project (3GPP) wirelesscommunication standard. The LTE network may be a radio access network(RAN) that includes one or more base stations, such as eNodeBs (eNBs),via which user device 210 communicates with the EPC. The EPC may includeSGW 230, MME 240, and/or PGW 250 and may enable user device 210 tocommunicate with network 280 and/or the IMS core. The IMS core mayinclude HSS/AAA server 260 and may manage authentication, connectioninitiation, account information, a user profile, etc. associated withuser device 210. As shown in FIG. 2, the LTE network may include basestation 220, and the EPC may include SGW 230, MME 240, and/or PGW 250.

User device 210 may include any computation or communication device,such as a wireless mobile communication device that is capable ofcommunicating with base station 220 and/or a network (e.g., network280). For example, user device 210 may include a radiotelephone, apersonal communications system (PCS) terminal (e.g., that may combine acellular radiotelephone with data processing and data communicationscapabilities), a personal digital assistant (PDA) (e.g., that caninclude a radiotelephone, a pager, Internet/intranet access, etc.), asmart phone, a laptop computer, a tablet computer, a camera, a personalgaming system, or another type of computation or communication device.User device 210 may send data to and/or receive data from network 280.

Base station 220 may include one or more network devices that receive,process, and/or transmit traffic, such as audio, video, text, and/orother data, destined for and/or received from user device 210. In anexample implementation, base station 220 may be an eNB device and may bepart of the LTE network. Base station 220 may receive traffic fromand/or send traffic to network 280 via SGW 230 and PGW 250. Base station220 may send traffic to and/or receive traffic from user device 210 viaan air interface. One or more of base stations 220 may be associatedwith a RAN, such as the LTE network.

Base station 220 may store information identifying channels associatedwith an unlicensed spectrum. Each channel may correspond to a particularunlicensed band in the unlicensed spectrum. For example, a first channelmay correspond to a first band having a first frequency range, a secondchannel may correspond to a second band having a second frequency range,and so on. Base station 220 may dynamically assign unlicensed bands topackets of data flows transmitted to and/or from user device 210. Basestation 220 may communicate with user device 210 over a licensed band toprovide unlicensed band assignments to user device 210. Base station 220may simultaneously communicate with user device 210 over a PCC,associated with the licensed band, and over an SCC associated withdynamically assigned unlicensed bands.

SGW 230 may include one or more network devices, such as a gateway, arouter, a modem, a switch, a firewall, a network interface card (NIC), ahub, a bridge, a proxy server, an optical add-drop multiplexer (OADM),or some other type of device that processes and/or transfers traffic.SGW 230 may, for example, aggregate traffic received from one or morebase stations 220 and may send the aggregated traffic to network 280 viaPGW 250. In one example implementation, SGW 230 may route and forwarduser data packets, may act as a mobility anchor for a user plane duringinter-eNB handovers, and may act as an anchor for mobility between LTEand other 3GPP technologies.

MME 240 may include one or more network devices that perform operationsassociated with a handoff to and/or from the EPS. MME 240 may performoperations to register user device 210 with the EPS, to handoff userdevice 210 from the EPS to another network, to handoff a user device 210from the other network to the EPS, and/or to perform other operations.MME 240 may perform policing operations for traffic destined for and/orreceived from user device 210. MME 240 may authenticate user device 210(e.g., via interaction with HSS/AAA server 260).

PGW 250 may include one or more network devices, such as a gateway, arouter, a modem, a switch, a firewall, a NIC, a hub, a bridge, a proxyserver, an OADM, or some other type of device that processes and/ortransfers traffic. PGW 250 may, for example, provide connectivity ofuser device 210 to external packet data networks by being a trafficexit/entry point for user device 210. PGW 250 may perform policyenforcement, packet filtering, charging support, lawful intercept,and/or packet screening. PGW 250 may also act as an anchor for mobilitybetween 3GPP and non-3GPP technologies.

HSS/AAA server 260 may include one or more computing devices, such as aserver device or a collection of server devices. In someimplementations, HSS/AAA server 260 may include a device that gathers,processes, searches, stores, and/or provides information in a mannerdescribed herein. For example, HSS/AAA server 260 may manage, update,and/or store, in a memory associated with HSS/AAA server 260, profileinformation associated with user device 210 that identifies applicationsand/or services that are permitted for and/or accessible by user device210, bandwidth or data rate thresholds associated with the applicationsor services, information associated with a user of user device 210(e.g., a username, a password, a personal identification number (PIN),etc.), rate information, minutes allowed, and/or other information.Additionally, or alternatively, HSS/AAA server 260 may include a devicethat performs authentication, authorization, and/or accounting (AAA)operations associated with a communication connection with user device210.

CSCF server 270 may include one or more computing devices, such as aserver device or a collection of server devices. In someimplementations, CSCF server 270 may include a device that gathers,processes, searches, stores, and/or provides information in a mannerdescribed herein. CSCF server 270 may process and/or route calls to andfrom user device 210 via the EPC. For example, CSCF server 270 mayprocess calls, received from network 280, that are destined for userdevice 210. In another example, CSCF server 260 may process calls,received from user device 210, that are destined for network 280.

Network 280 may include one or more wired and/or wireless networks. Forexample, network 280 may include a cellular network (e.g., a secondgeneration (2G) network, a third generation (3G) network, a fourthgeneration (4G) network, a fifth generation (5G) network, a long-termevolution (LTE) network, a global system for mobile (GSM) network, acode division multiple access (CDMA) network, an evolution-dataoptimized (EVDO) network, or the like), a public land mobile network(PLMN), and/or another network. Additionally, or alternatively, network280 may include a local area network (LAN), a wide area network (WAN), ametropolitan network (MAN), the Public Switched Telephone Network(PSTN), an ad hoc network, a managed Internet Protocol (IP network, avirtual private network (VPN), an intranet, the Internet, a fiberoptic-based network, and/or a combination of these or other types ofnetworks.

The quantity of devices and/or networks in environment is not limited towhat is shown in FIG. 2. In practice, environment 200 may includeadditional devices and/or networks; fewer devices and/or networks;different devices and/or networks; or differently arranged devicesand/or networks than illustrated in FIG. 2. Also, in someimplementations, one or more of the devices of environment 200 mayperform one or more functions described as being performed by anotherone or more of the devices of environment 200. Devices of environment200 may interconnect via wired connections, wireless connections, or acombination of wired and wireless connections.

FIG. 3 illustrates example components of a base station. As shown inFIG. 3, base station 220 may include sequence generator 310, bandscanner 320, channel selector 330, and transceiver component 340.Sequence generator 310 may include a sequence generating component, suchas a pseudorandom number generator and/or some other type of sequencegenerator. For example, sequence generator 310 may include a componentthat may generate a uniformly distributed channel number sequence.Sequence generator 310 may generate a sequence of numbers that eachidentify a particular channel corresponding to a particular unlicensedband that may be dynamically assigned. Sequence generator 310 maygenerate a sequence of numbers that are within a range of the number ofchannels (e.g., the number of unlicensed bands) included in theunlicensed spectrum. In some implementations, sequence generator 310 mayperiodically provide a sequence of numbers to channel selector 330 inaccordance with a band hop schedule.

Band selector 320 may include a spectrum analyzer and/or some other typeof device that may measure interference and/or noise present for datatransmitted in particular frequency bands. Band selector 320 may providefrequency interference information to channel selector 330. As describedin greater detail below, channel selector 330 may exclude particularunlicensed bands from being assigned based on the frequency interferenceinformation.

Channel selector 330 may store information identifying unlicensed bandsand corresponding channels. Channel selector 330 may receive a sequenceof numbers from sequence generator 310 and frequency interferenceinformation from band selector 320. Channel selector 330 may identifybands having a measure of frequency interference that exceeds aparticular threshold. Channel selector 330 may generate selected channelinformation including a sequence of channel identifiers, received fromsequence generator 310, with the exclusion of those channel identifiersassociated with bands having interference exceeding a particularthreshold. In some implementations, the selected channel information mayexclude channels associated with currently assigned bands. In someimplementations, the selected channel information may includeinformation identifying the frequency range of the unlicensed bandcorresponding to the channel identifiers in the sequence. The sequenceof channel identifiers, included in the selected channel information,may correspond to unlicensed bands that are to be dynamically assignedfor data flow transmission (e.g., on a per-packet basis). In someimplementations, the selected channel information may identify multiplesequences, for example, when multiple unlicensed bands may be used byuser device 210 and base station 220 to communicate. Channel selector330 may provide the selected channel information to transceivercomponent 340.

Transceiver component 340 may receive the selected channel information,and may provide the selected channel information to user device 210 overthe PCC (i.e., via a licensed band). In some implementations, theselected channel information may include control information that istransmitted separately or otherwise distinguished from other data (e.g.,substantive user data) that is unrelated to the selected channelinformation.

User device 210 may transmit and/or receive data flows (e.g., to and/orfrom transceiver component 340) via unlicensed bands, identified in theselected channel information. In some implementations, transceivercomponent 340 may transmit and/or receive data flows (e.g., to and/orfrom user device 210) via the unlicensed bands, identified in theselected channel information. As a result, user device 210 and basestation 220 may communicate via an aggregation of the licensed andunlicensed bands. While sequence generator 310, band selector 320 andchannel selector 330 are described as being part of base station 220, inpractice, sequence generator 310, and band selector 320, and/or channelselector 330 may be implemented external to base station 220.

FIG. 4 illustrates a flowchart of an example process 400 for assigningunlicensed bands for the transmission of data flows. In someimplementations, process 400 may be performed by one or more componentsof base station 220. In some implementations, some or all of blocks ofprocess 400 may be performed by one or more components of another devicein environment 200 (e.g., user device 210), or a group of devicesincluding or excluding base station 220.

As shown in FIG. 4, process 400 may include determining that data flowsare to be transmitted an SCC (block 410). For example, base station 220may determine that data flows are to be transmitted via the SCC (e.g.,unlicensed bands are to be dynamically assigned) when bandwidthmeasurements (e.g., data rates, latency, jitter, etc.) for user device210 are below a particular threshold. As an example, base station 220may determine that data flows are to be transmitted via the SCC whenbandwidth measurements drop below a threshold corresponding to a minimumbandwidth that user device 210 is to receive (e.g., in accordance with aservice level agreement or subscription identifying the minimumbandwidth). Additionally, or alternatively, base station 220 maydetermine that data flows are to be transmitted via the SCC in order tosupplement bandwidth provided by the licensed band and to increase thebandwidth available to user device 210. Additionally, or alternatively,base station 220 may determine that data flows are to be transmitted viathe SCC based on identifying that user device 210 is capable oftransmitting and/or receiving data flows via licensed and unlicensedbands.

Process 400 may also include generating a sequence of channelidentifiers (block 420). For example, base station 220 may generate asequence of channel identifiers using sequence generator 310 asdescribed above. In some implementations, base station 220 may generatea sequence including channel identifiers within a range of the number ofchannels (e.g., the number of unlicensed bands) included in anunlicensed spectrum. As described above, base station 220 may sub-dividethe unlicensed spectrum into a number of unlicensed bands, and assign achannel number to each unlicensed band. In some implementations, thesequence may be randomly generated using a pseudorandom number generatorand/or some other type of number generator. In one implementation, thesequence may be generated as a random or pseudorandom sequence. Forexample, base station 220 may generate the sequence based on a seedvalue.

Process 400 may also include measuring interference in the unlicensedband (block 430). For example, base station 220 may measure interferenceor noise in the unlicensed band using band scanner 320 as describedabove. Base station 220 may measure band interference for eachunlicensed band in the unlicensed spectrum. As an example, for anunlicensed band having the frequency range of 100 megahertz (MHz) to 250MHz, base station 220 may measure the interference or noise included inthe unlicensed band having the frequency range of 100 MHz to 250 MHz.Base station 220 may identify unlicensed bands whose measure ofinterference/noise exceeds a particular threshold, and may exclude theseunlicensed bands from being assigned for data flow transmission.

Process 400 may further include generating selected channel information(block 440). For example, base station 220 may generate the selectedchannel information based on the sequence of channel identifiers and theunlicensed band interference information. In some implementations, basestation 220 may select a series of channel identifiers (e.g., a channelselection sequence) in a manner that excludes those channels of theunlicensed band that include a measure of interference/noise thatexceeds a particular threshold. The sequence of channel identifiers,included in the selected channel information, may correspond tounlicensed bands that are to be dynamically assigned for data flowtransmission (e.g., on a per-packet basis). For example, the channels,identified in the selected channel information, may be switched on aper-packet basis.

In some implementations, the selected channel information may identifymultiple sequences, for example, when multiple unlicensed bands may beused by user device 210 and base station 220 to communicate. That is,user device 210 and base station 220 may simultaneously communicate viaa licensed band and multiple aggregated unlicensed bands. For example,the selected channel information may include multiple sequences, whereeach sequence identifies a sequence of unlicensed bands via which userdevice 210 and base station 220 may communicate. As an example, when theselected channel information includes two sequences, user device 210 andbase station 220 may communicate via an unlicensed band identified in afirst sequence, and an unlicensed band identified in a second sequence.

In some implementations, multiple unlicensed bands may be selected foruplink and downlink transmissions. For example, a first sequence mayidentify unlicensed bands to be used for uplink transmission, and asecond sequence may identify unlicensed bands to be used for downlinktransmissions (e.g., in implementations using frequency-divisionduplexing (FDD)). In some implementations, a single carrier associatedwith a single unlicensed band may be used for both uplink and downlinktransmission (e.g., in implementations using time-division duplexing(TDD) or in implementations using FDD where the secondary carrier maysupport either uplink or downlink transmission).

In some implementations, the channel selection information may include aseed value used to generate the sequence of channel identifiers (e.g.,at block 420). In some implementations, the seed value may be providedto user device 210. The seed value may be input to an identicalpseudorandom number generator, associated with user device 210, todeterministically generate the same channel sequence generated by basestation 220.

Process 400 may also include providing channel selection information viathe licensed band (450). For example, base station 220 may provide thechannel selection information (e.g., information identifying theunlicensed band and the channel selection sequence) to user device 210via the licensed band. Based on the selected channel information, userdevice 210 may use the unlicensed bands, identified in the selectedchannel information, to transmit and/or receive data flows to and/orfrom base station 220 via the unlicensed bands. In some implementations,transceiver component 340 may transmit and/or receive data to and/orfrom user device 210 via the unlicensed bands identified in the selectedchannel information. User device 210 and base station 220 maysimultaneously communicate via the licensed and unlicensed bands.

In some implementations, user device 210 and base station 220 maydynamically switch bands based on the channel selection sequenceincluded in the selection channel information. For example, user device210 and base station 220 may dynamically switch bands based on a bandhop schedule that identifies a band hop frequency (e.g., a 20 megahertz(MHz) hopping frequency, or some other hopping frequency). In someimplementations, user device 210 and/or base station 220 may receive theband hop schedule from an operator of base station 220. The frequency atwhich unlicensed channels are to be dynamically changed and/or assignedmay be based on balancing the likelihood of transmission errors againstprocessing requirements. For example, a relatively greater frequency mayreduce transmission errors since a greater frequency of channelassignment changes may reduce the number of packets assigned to aparticular unlicensed channel. A relatively lower frequency may reducethe amount of processing needed to change the assignment the unlicensedbands.

Process 400 may also include monitoring the performance of the SCC(block 460). For example, base station 220 may monitor bandwidthmeasurements and/or error rates of data flows transmitted via thevarious channels used in the unlicensed band. In some implementations,base station 220 may provide test packets via the unlicensed band, andidentify the bit rate, latency, jitter, and/or some other bandwidthmeasurement associated with the transmission of the test packets.Additionally, or alternatively, base station 220 may monitor theperformance of the unlicensed bands using the some other technique.

At some point, process 400 may further include discontinuing use of theunlicensed bands (block 470). For example, base station 220 maydiscontinue use of the unlicensed band when a measure of the performancedrops below a particular threshold. In some implementations, theperformance may drop below the particular threshold based on thepresence of interference in the channels of the unlicensed band.Additionally, or alternatively, the performance may drop below theparticular threshold based on some other condition. Based ondiscontinuing the use of the unlicensed bands, base station 220 maydiscontinue the assignment of the unlicensed bands, and transmit and/orreceive data flows to and/or from user device 210 via the PCC (e.g.,licensed bands).

FIGS. 5A-5B illustrate example implementations for transmitting andreceiving data flows via licensed and unlicensed bands. In FIG. 5A,assume that user device 210 functions as a transmitter to transmit dataflows via base station 220. Further, assume that transceiver component340 has received selected channel information from channel selector 330as described above. Given this assumption, transceiver component 340 mayreceive data flows from user device 210 via the licensed and unlicensedbands. As shown in FIG. 5A, transceiver component 340 may provide theselected channel information to user device 210 via a licensed band overthe PCC band. User device 210 may receive the selected channelinformation, isolate information identifying the unlicensed band, andbegin to transmit and/or receive data flows via the unlicensed band. Insome implementations, packets in the data flows may be redundantlytransmitted via the PCC and SCC bands. Alternatively, packets in thedata flow may be alternated between the PCC and SCC bands fortransmission. As shown in FIG. 5A, the data flows may be modulated basedon the PCC and the currently selected SCC frequencies. The data flowsmay be demodulated when received by transceiver component 340. Also, theselected channel information may be demodulated by user device 210 basedon the PCC frequency.

Referring to FIG. 5B, assume that user device 210 functions as areceiver to receive data flows from base station 220. Further, assumethat transceiver component 340 has received selected channel informationfrom channel selector 330 as described above. Given this assumption,transceiver component 340 may begin to transmit and/or receive dataflows via unlicensed bands identified in the selected channelinformation. As shown in FIG. 5B, transceiver component 340 may providethe selected channel information to user device 210 via a licensed band.User device 210 may receive the selected channel information, isolateinformation identifying the unlicensed band (e.g., based on a togglesequence, a header, or the like, included in the selected channelinformation), and begin to transmit and/or receive data flows via theunlicensed band. As shown in FIG. 5B, the data flows and the selectedchannel information may be demodulated based on the PCC and thecurrently selected SCC frequencies.

FIG. 6 illustrates an example implementation for transmitting data flowsvia licensed and unlicensed bands. In FIG. 6, assume that user device210 connects with base station 220 via a licensed band. Further, assumethat base station 220 identifies that user device 210 and base station220 are to transmit and/or receive data flows via licensed andunlicensed bands. For example, as described above, base station 220 mayidentify that unlicensed bands are to be used to transmit and/or receivedata flows when user device 210 is capable of transmitting and/orreceiving data flows via multiple bands (e.g., licensed and unlicensedbands). Additionally, or alternatively, base station 220 may identifythat unlicensed bands are to be used to transmit and/or receive dataflows when bandwidth measurements (e.g., data rates, latency, jitter,etc.) for user device 210 are below a particular threshold (e.g., athreshold in accordance with a service level agreement or subscriptionidentifying minimum bandwidth that user device 210 is to receive).Additionally, or alternatively, base station 220 may identify thatunlicensed bands are to be used to transmit and/or receive data flowsbased on some other technique or parameter.

Based on determining that unlicensed bands are to be used to transmitand/or receive data flows, base station 220 may generate a number (e.g.,using sequence generator 310), such as a channel number identifying anunlicensed band (arrow 1). Base station 220 may further determinefrequency interference information (e.g., using band selector 320 asshown at arrow 2). Based on the frequency interference information andthe channel number generated by sequence generator 310, base station 220may select a channel (e.g., using 330) and provide selected channelinformation to user device 210 via transceiver component 340 and thelicensed band (arrows 3 and 4). User device 210 may then transmit and/orreceive data flows using the licensed and unlicensed bands. Further,base station 220 may transmit and/or receive data flows via the licensedand unlicensed bands. As described above, base station 220 mayperiodically provide updated selected channel information to cause userdevice 210 to transmit and/or receive data flows via the licensed andunlicensed bands.

While a particular example is shown in FIG. 6, it will be apparent thatthe above description is merely an example implementation. Otherexamples are possible and may differ from what was described with regardto FIG. 6.

FIG. 7A illustrates a graph of an example unlicensed spectrum dividedinto possible channels. As shown in FIG. 7A, eight bands in theunlicensed spectrum (e.g., corresponding to frequencies f₁ through f₈),maybe divided into unlicensed bands. The unlicensed bands may beidentified by channel identifiers, such as channel identifiers 1 through8 corresponding to f₁ through f₈. An example sequence, provided bychannel selector 330, is further shown. In some implementations, basestation 220 may receive information from an operator that identifies thedivision of the unlicensed spectrum and the associated channelidentifiers. In some implementations, the division of the unlicensedspectrum into the channels may be based on code division multiplexing(CDM), orthogonal frequency division multiplexing (OFDM), frequencydivision multiplexing (FDM), time division multiplexing (TDM), and/orsome other technique.

FIG. 7B illustrates a graph of example unlicensed band assignments overtime. As shown in FIG. 7B, unlicensed bands may be dynamically assignedfor data flow transmission over time. The assignment of the unlicensedbands may be based on channels selected by base station 220. Forexample, the assignment of the unlicensed bands, shown in FIG. 7B, maycorrespond to channel selections made by channel selector 330 (e.g.,based on channel numbers provided by sequence generator 310 andfrequency interference information provided by band selector 320). Thechange in unlicensed band assignments over time, shown in FIG. 7B, maybe based on a band hop schedule that identifies a frequency at which theunlicensed band assignments are to change. As described above, arelatively greater frequency may reduce the likelihood of transmissionerrors, since a greater frequency of band assignment changes may reducethe number of packets assigned to a particular unlicensed band. Arelatively lower frequency may reduce the amount of processing needed tochange the assignment the unlicensed bands.

User device 210 may transmit and/or receive data flows via the assignedunlicensed bands. In accordance with the example shown in FIG. 7B, userdevice 210 may transmit and/or receive data flows via a first unlicensedband during a first time period. In accordance with a band hop schedule,user device 210 may discontinue transmitting and/or receiving data flowsvia the first unlicensed band, and may begin transmitting and/orreceiving data flows via a second unlicensed band. Similarly, userdevice 210 may transmit and/or receive data flows via dynamicallyassigned unlicensed bands identified in selected channel informationreceived via a PCC.

While particular examples are shown in FIGS. 7A and 7B, it will beapparent that the above description is merely an example implementation.Other examples are possible and may differ from what was described withregard to FIGS. 7A and 7B.

FIG. 8 is a diagram of example components of device 800. One or more ofthe devices described above (e.g., with respect to FIGS. 1-3, 5A, 5B,and 6) may include one or more devices 800. Device 800 may include bus810, processor 820, memory 830, input component 840, output component850, and communication interface 860. In another implementation, device800 may include additional, fewer, different, or differently arrangedcomponents.

Bus 810 may include one or more communication paths that permitcommunication among the components of device 800. Processor 820 mayinclude a processor, microprocessor, or processing logic that mayinterpret and execute instructions. Memory 830 may include any type ofdynamic storage device that may store information and instructions forexecution by processor 820, and/or any type of non-volatile storagedevice that may store information for use by processor 820.

Input component 840 may include a mechanism that permits an operator toinput information to device 800, such as a keyboard, a keypad, a button,a switch, etc. Output component 850 may include a mechanism that outputsinformation to the operator, such as a display, a speaker, one or morelight emitting diodes (“LEDs”), etc.

Communication interface 860 may include any transceiver-like mechanismthat enables device 800 to communicate with other devices and/orsystems. For example, communication interface 860 may include anEthernet interface, an optical interface, a coaxial interface, or thelike. Communication interface 860 may include a wireless communicationdevice, such as an infrared (“IR”) receiver, a Bluetooth® radio(Bluetooth is a registered trademark of Bluetooth SIG, Inc.), radio, orthe like. The wireless communication device may be coupled to anexternal device, such as a remote control, a wireless keyboard, a mobiletelephone, etc. In some embodiments, device 800 may include more thanone communication interface 860. For instance, device 800 may include anoptical interface and an Ethernet interface.

Device 800 may perform certain operations relating to one or moreprocesses described above. Device 800 may perform these operations inresponse to processor 820 executing software instructions stored in acomputer-readable medium, such as memory 830. A computer-readable mediummay be defined as a non-transitory memory device. A memory device mayinclude space within a single physical memory device or spread acrossmultiple physical memory devices. The software instructions may be readinto memory 830 from another computer-readable medium or from anotherdevice. The software instructions stored in memory 830 may causeprocessor 820 to perform processes described herein. Alternatively,hardwired circuitry may be used in place of or in combination withsoftware instructions to implement processes described herein. Thus,implementations described herein are not limited to any specificcombination of hardware circuitry and software.

The foregoing description provides illustration and description, but isnot intended to be exhaustive or to limit the possible implementationsto the precise form disclosed. Modifications and variations are possiblein light of the above disclosure or may be acquired from practice of theimplementations.

It will be apparent that different examples of the description providedabove may be implemented in many different forms of software, firmware,and hardware in the implementations illustrated in the figures. Theactual software code or specialized control hardware used to implementthese examples is not limiting of the implementations. Thus, theoperation and behavior of these examples were described withoutreference to the specific software code—it being understood thatsoftware and control hardware can be designed to implement theseexamples based on the description herein.

Even though particular combinations of features are recited in theclaims and/or disclosed in the specification, these combinations are notintended to limit the disclosure of the possible implementations. Infact, many of these features may be combined in ways not specificallyrecited in the claims and/or disclosed in the specification. Althougheach dependent claim listed below may directly depend on only one otherclaim, the disclosure of the possible implementations includes eachdependent claim in combination with every other claim in the claim set.

Some implementations are described herein in conjunction withthresholds. The term “greater than” (or similar terms), as used hereinto describe a relationship of a value to a threshold, may be usedinterchangeably with the term “greater than or equal to” (or similarterms). Similarly, the term “less than” (or similar terms), as usedherein to describe a relationship of a value to a threshold, may be usedinterchangeably with the term “less than or equal to” (or similarterms). As used herein, “satisfying” a threshold (or similar terms) maybe used interchangeably with “being greater than a threshold,” “beinggreater than or equal to a threshold,” “being less than a threshold,”“being less than or equal to a threshold,” or other similar terms,depending on the context in which the threshold is used.

No element, act, or instruction used in the present application shouldbe construed as critical or essential unless explicitly described assuch. An instance of the use of the term “and,” as used herein, does notnecessarily preclude the interpretation that the phrase “and/or” wasintended in that instance. Similarly, an instance of the use of the term“or,” as used herein, does not necessarily preclude the interpretationthat the phrase “and/or” was intended in that instance. Also, as usedherein, the article “a” is intended to include one or more items, andmay be used interchangeably with the phrase “one or more.” Where onlyone item is intended, the terms “one,” “single,” “only,” or similarlanguage is used. Further, the phrase “based on” is intended to mean“based, at least in part, on” unless explicitly stated otherwise.

What is claimed is:
 1. A method comprising: selecting, by a networkdevice, a plurality of unlicensed bands in an unlicensed spectrum;determining, by the network device, a sequence that identifies an orderin which the plurality of unlicensed bands are to be assigned forcommunication of a data flow between a user device and the networkdevice; providing, by the network device and via a licensed band, thesequence to the user device; and receiving, by the network device andfrom the user device, the data flow via the plurality of unlicensedbands, wherein the network device receives the data flow, over theunlicensed bands, by switching reception, at particular time intervalsand in the order identified in the sequence, between the unlicensedbands.
 2. The method of claim 1, further comprising: discontinuing useof the plurality of unlicensed bands, for subsequent communication ofthe data flow, based on detection of performance of the plurality ofunlicensed bands dropping below a threshold.
 3. The method of claim 2,wherein discontinuing use of the plurality of unlicensed bands furtherincludes: continuing to communicate the data flow via the licensed band.4. The method of claim 1, further comprising: measuring interferencelevels in the plurality of unlicensed bands; determining, based on themeasuring of the interference levels, that performance of the unlicensedbands has dropped below a threshold level; and causing, based on thedetermination that the performance of the unlicensed bands have droppedbelow the threshold level, the user device to switch from using theplurality of unlicensed bands, to transmit the data flow, to using thelicensed band to transmit the data flow.
 5. The method of claim 1,wherein selecting the plurality of unlicensed bands includes selectingthe plurality of unlicensed bands as particular unlicensed bands thatare useable by the user device and that have interference that is belowa threshold.
 6. The method of claim 1, wherein the sequence of theplurality of unlicensed bands is determined via a pseudorandom numbergenerator.
 7. The method of claim 1, wherein the switching at theparticular time intervals includes periodically switching between theplurality of unlicensed bands based on a particular time period.
 8. Anetwork device to: select a plurality of unlicensed bands in anunlicensed spectrum; determine a sequence that identifies an order inwhich the plurality of unlicensed bands are to be assigned forcommunication of a data flow between a user device and the networkdevice; provide the sequence, via a licensed band, to the user device;and receive, from the user device, the data flow via the plurality ofunlicensed bands, wherein the network device receives the data flow,over the unlicensed bands, by switching reception, at particular timeintervals and in the order identified in the sequence, between theunlicensed bands.
 9. The network device of claim 8, wherein the networkdevice is additionally to: discontinue use of the plurality ofunlicensed bands, for communication of the data flow, based on detectionof performance of the plurality of unlicensed bands dropping below athreshold.
 10. The network device of claim 8, wherein discontinuing useof the plurality of unlicensed bands further includes continuing tocommunicate the data flow via the licensed band.
 11. The network deviceof claim 8, wherein the network device is further to: measureinterference levels in the plurality of unlicensed bands; determine,based on the measuring of the interference levels, that performance ofthe unlicensed based has dropped below a threshold level; and cause,based on the determination that the performance of the unlicensed basedhas dropped below the threshold level, the user device to switch fromusing the plurality of unlicensed bands, to transmit the data flow, tousing the licensed band to transmit the data flow.
 12. The networkdevice of claim 8, wherein selecting the plurality of unlicensed bandsincludes selecting the plurality of unlicensed bands as particularunlicensed bands that are useable by the user device and that haveinterference that is below a threshold.
 13. The network device of claim8, wherein the sequence of the channel identifiers is determined using apseudorandom number generator.
 14. The method of claim 8, wherein theswitching at the particular time intervals includes periodicallyswitching between the plurality of unlicensed bands based on aparticular time period.
 15. A non-transitory computer-readable medium tocause one or more processors to execute processor-executableinstructions, wherein the processor-executable instructions cause theone or more processors to: select a plurality of unlicensed bands in anunlicensed spectrum; determine a sequence that identifies an order inwhich the plurality of unlicensed bands are to be assigned forcommunication of a data flow between a user device and the networkdevice; provide the sequence, via a licensed band, to the user device;and receive, from the user device, the data flow via plurality ofunlicensed bands, wherein the network device receives the data flow,over the unlicensed bands, by switching reception, at particular timeintervals and in the order identified in the sequence, between theunlicensed bands.
 16. The non-transitory computer-readable medium ofclaim 15, wherein the processor-executable instructions further causethe one or more processors to: discontinue use of the plurality ofunlicensed bands, for communication of the data flow, based on detectionof performance of the plurality of unlicensed bands dropping below athreshold.
 17. The non-transitory computer-readable medium of claim 16,wherein the processor-executable instructions further cause the one ormore processors to: discontinue use of the plurality of unlicensed bandsby continuing to communicate the data flow via the licensed band. 18.The non-transitory computer-readable medium of claim 15, wherein theprocessor-executable instructions further cause the one or moreprocessors to: measure interference levels in the plurality ofunlicensed bands; determine, based on the measuring of the interference,that performance of the unlicensed based has dropped below a thresholdlevel; and cause, based on the determination that the performance of theunlicensed based has dropped below the threshold level, the user deviceto switch from using the plurality of unlicensed bands, to transmit thedata flow, to using the licensed band to transmit the data flow.
 19. Thenon-transitory computer-readable medium of claim 15, wherein selectingthe plurality of unlicensed bands includes selecting the plurality ofunlicensed bands as particular unlicensed bands that are useable by theuser device and that have interference that is below a threshold. 20.The non-transitory computer-readable medium of claim 15, wherein thesequence of the plurality of unlicensed bands is determined via apseudorandom number generator.